﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DataExtractionLanguage
{
    public enum TokenTypeEnum
    {
        EOF,

        // Operators
        OpEqualEqual,
        OpNotEqual,
        OpGreater,
        OpGreaterOrEqual,
        OpLess,
        OpLessOrEqual,
        OpAnd,
        OpOr,
        OpNot,
        OpPlus,
        OpMinus,
        OpMultiple,
        OpDivide,
        OpPower,

        // Punctuations
        OpenParentheses,
        CloseParenthese,
        OpenBarBrackets,
        CloseBarBrackets,
        OpenBrackets,
        CloseBrackets,
        Comma,
        Semicolon,
        Dot,

        // Types
        Number,
        String,
        Identifier,
        Term,
        Bool,

        // Keywords
        Select,
        From,
        Where,
        Union,
        As,
        On,
        Inner,
        Join,
        Outer,
        Left,
        Right,

        // Properties
        Text,
        GetAttribute,
        CountOf,
        ChildCount,

        // Functions
        SubString,
        Length,
        Like,
        IndexOf,
        Trim,
        Match,

        /// <summary>Unknown token.</summary>
        Error

    }
}
